﻿using System;
using System.Collections.Generic;
using System.Text;

namespace AndersLiu.Reflector.Program
{
    /// <summary>
    /// Provides data for the Changed event of HistoryList.
    /// </summary>
    class HistoryChangedEventArgs<THistoryPoint> : EventArgs
    {
        /// <summary>
        /// Create a new event argument.
        /// </summary>
        /// <param name="previous">Previous history point.</param>
        /// <param name="source">Navigation source.</param>
        public HistoryChangedEventArgs(THistoryPoint previous, object source)
        {
            this.PreviousHistoryPoint = previous;
            this.NavigationSource = source;
        }

        /// <summary>
        /// Get the previous hitory point.
        /// </summary>
        public THistoryPoint PreviousHistoryPoint { get; private set; }

        /// <summary>
        /// Get the navigation source that causes the navigation.
        /// </summary>
        public object NavigationSource { get; private set; }
    }
}
